#include <iostream>
#include <string>
#include <regex>

int main()
{
    std::string src = "/abcd/1234";
    
    //匹配规则
    std::regex e("/abcd/(\\d+)");
    //匹配以 /abcd/ 开始，后面跟的一个或多个数字字符的字符串，并在匹配过程中提取这个字符串
    // "\\"表示转义字符，如果是 "\d+"，这样'\d'就是转义字符了
    // d 表示后面匹配一个数字字符，d+匹配的是一个或多个数字字符，直到匹配到第一个非数字字符为止
    std::smatch matches; //存放匹配成功的字符串的容器
    //第一个是src字符串本身，后面就是匹配成功的字符串。

    bool ret = std::regex_match(src,matches,e); 
    if(ret == false)
        return -1;
    for(auto &s: matches)
    {
        std::cout << s << std::endl;
    }

    return 0;
}